The present invention relates generally to a finite impulse response filter, and particularly to a DC-Insensitive finite impulse response filter.
FIG. 1 illustrates, in block diagram form, a portion of a prior art Optical Partial Response Maximum Likelihood (PRML) Read Channel 20. Read Channel 20 includes Analog to Digital Converter (ADC) 22, Finite Impulse Response Filter (FIR) 26 and Viterbi Decoder 30. ADC 22 receives an RF signal on line 21, which it converts to a digital signal, the x(n) signal on line 23. FIR 26 filters the x(n) signal to generate the y(n) signal, which it couples to Viterbi Decoder 30.
Read Channel 20 functions as expected when the RF signal on line 21 is free from baseline wandering. As used herein, baseline wandering refers to low frequency disturbances of a radio frequency signal. Typically, prior to ADC 22 effort is made to remove baseline wandering from the RF signal using an Eight-to-Fourteen Modulator (EFM) (not illustrated); however, an EFM cannot eliminate the short-term, sample-to sample, effects of baseline wandering. Thus, the RF input to ADC 22, and its output, the x(n) signal, include time variant error attributable to baseline wandering. FIR 26 does not function as desired when the x(n) signal is subject to baseline wandering.
FIG. 2 schematically illustrates FIR 26, a conventional Least Mean Square (LMS) FIR. FIR 26 includes N serially-coupled latches 30, 32 and 34, each with its output signal, an x(nxe2x88x92i) signal, (i is an integer from 1 to I) coupled to one of I Taps 40, 42 and 44. Each Tap i multiplies its input signal, x(nxe2x88x92i), by a coefficient signal, ki(n), to generate a tap output signal. Adder 50 sums the tap output signals to generate the FIR output signal, the y(n) signal. Error Calculator 52 determines the error of the y(n) signal, which it represents via the e(n) signal. Each of the N Coefficient Calculators 60, 62 and 64 uses the e(n) signal to update its associated coefficient signal, ki(n).
The timing diagram of FIG. 3 illustrates the operation of prior art FIR 26 when its input signal, x(n) 80, is free from baseline wandering. The FIR output signal, y(n) 82, quickly settles into a pattern of switching between five ideal values. The error signal, e(n) 84, quickly converges to zero. The timing diagram of FIG. 4 illustrates that the operation of prior art FIR 26 differs substantially when its input signal, x(n) 81, is subject to baseline wandering. The FIR output signal, y(n) 83, never settles into a pattern of switching between a limited set of ideal values. The error signal, e(n) 85, never converges to zero.
FIG. 5 illustrates schematically prior art Coefficient Calculator 59 with which Coefficient Calculators 60, 62 and 64 are realized. Coefficient Calculator 59 implements a conventional Least Mean Square algorithm. The tap weight ki(n) for Tap i at time n is given by Expression (1).
ki(n)=ki(nxe2x88x921)+mu*del ki(nxe2x88x921) when n greater than 0;=ki initial when n=0;xe2x80x83xe2x80x83(1)
where ki(nxe2x88x921) is the immediately previous value of the tap weight for Tap i;
mu is loop gain;
del ki(nxe2x88x921) is the increment in the value of the tap weight; and
ki initial is the initial value of ki(n).
The increment in the value of the tap weight is given by Expression (2).
del ki (nxe2x88x921)=d[y(n)xe2x88x92y{circumflex over ( )}(n)]2/dki(n);xe2x80x83xe2x80x83(2)
where y{circumflex over ( )}(n) is the ideal value corresponding to y(n); and d[y(n)xe2x88x92y(n)]2/dki (n) expresses the derivative of [y(n)xe2x88x92{circumflex over ( )}(n)]2 over ki(n).
FIG. 6 illustrates, in block diagram form, prior art Error Calculator 52, which calculates both the error signal, e(n), and the y{circumflex over ( )}(n) signal from the y(n) signal. Error Calculator 52 includes Quantizer 110 and Subtractor 112. Quantizer 110 takes its input, the y(n) signal, and determines the corresponding ideal value, y{circumflex over ( )}(n), using Relationship (3).
y{circumflex over ( )}(n)=q*round(y(n)/q);xe2x80x83xe2x80x83(3)
where q represents a quantization interval; and
xe2x80x9croundxe2x80x9d represents a rounding function.
Subtractor 112 determines the error of the output signal, y(n), by subtracting it from the corresponding ideal value. Thus, the error signal, e(n), is given by Expression (3).
e(n)=y{circumflex over ( )}(n)xe2x88x92y(n).xe2x80x83xe2x80x83(4)
Referring again to FIG. 1, the FIR output signal, y(n),can be expressed as the sum of the i Tap outputs, as is done in Expression (5).
xe2x80x83y(n)=sum{ki*x(nxe2x88x92i)} for all i;xe2x80x83xe2x80x83(5)
where x(nxe2x88x92i) is the delayed input sample for Tap i.
Using Expressions (4) and (5) to substitute for y{circumflex over ( )}(n) and y(n) in Expression (2) yields Expression (6).
del ki(n)=2*e(n)x(nxe2x88x92i)xe2x80x83xe2x80x83(6)
Expression (6) shows that both e(n) and ki(n) are related to x(nxe2x88x921), and if x(nxe2x88x921) is contaminated with baseline wandering, then both e(n) and ki(n) will be contaminated as well. Thus, Expression (6) reveals that baseline wandering of the x(n) signal prevents both the error signal, e(n), and tap weight signals, ki(n), from converging. A need exists for a FIR capable of converging when its input signal is subject to baseline wandering.
The Finite Impulse Response filter (FIR) of the present invention reduces the effect of baseline wandering of the input signal on convergence. The FIR includes an adder, a DC-Insensitive error calculator, a DC-Insensitive coefficient calculator, and a multiplier. The adder adds a first tap signal to a second tap signal to produce a FIR output signal. The DC-Insensitive error calculator calculates from the FIR output signal an error value that converges in the presence of baseline wandering. The DC-Insensitive error calculator represents the error value via an error signal. The DC-Insensitive coefficient calculator calculates a coefficient value based upon the error signal and an input signal. The DC-Insensitive coefficient calculator forces the coefficient value to converge to a steady state value while the first signal is subject to baseline wandering. The coefficient value is represented by a coefficient signal. The multiplier multiplies the first input signal by the coefficient signal to produce the first tap signal.
The method filtering of the present invention reduces the effect of baseline wandering of the input signal on convergence. The method begins by multiplying a first input signal subject to baseline wandering by a first coefficient signal representing a first coefficient value to produce a first tap signal. Next, the first tap signal is added to a second tap signal to produce a FIR output signal. The FIR output signal is filtered to produce a filtered FIR output signal that is substantially free from the effects of baseline wandering. The filtered FIR output signal is then compared to an ideal value to generate an error signal that represents an error value. The first input signal is filtered to produce a filtered first input signal that is substantially free from the effects of baseline wandering. Finally, a value for the first coefficient is determined using a Least Mean Square (LMS) relationship, the filtered first input signal and the error signal. The first coefficient value converges to a first steady state value while the first input signal is subject to baseline wandering. The first coefficient value is represented via a first coefficient signal.